With the advent of computing clouds, there has been a surge in cloud-based services. Cloud-based services provide service users with on-demand access to virtualized resources for service execution, including networks, servers, applications, data storage, and services running on a platform. In recent years, there has been a significant increase in the scale of services hosted over the cloud. In addition, given the wide gamut of service users ranging from business users, e.g., business analysts, to small and medium business (SMB) customers, make it advantageous, and in some cases, imperative to present the services in the marketplace in an easy-to-use manner. Unfortunately, conventional methodologies for presenting cloud services require specific cloud configuration details from users, e.g., SW platform requirements, number of processors, the type and number of virtual machines (VMs), amount of storage, and so forth.
Conventional interfaces or virtualization engines, e.g., Amazon EC2, Rackspace, Microsoft Azure, ACS AMP 3.0, IBM TSAM, Sun Virtualbox, and so forth, present cloud-based services as infrastructure solutions where users need to provide detailed cloud configuration inputs. Usually, in the SMB marketplace where it may be advantageous for many cloud vendors, such as Xerox and ACS Cloud, to extend their cloud services business, detailed cloud configuration information may be unknown to the users, especially to non-IT experts. Hence, users may erroneously request inefficient configurations of services, either overprovisioning or under-provisioning their services. In at least some cases of overprovisioning, more resources are configured than are actually needed, which may lead to resource over-use, causing the energy usage and budget for the service to be higher than necessary. On the other hand, at least some cases of under-provisioning, fewer resources may be requested than required to maintain the desired performance demands resulting in a failure to satisfy such demands.
It may therefore be advantageous to provide enhanced methods or systems for recommending and regulating cloud configuration and Service Level Agreement (SLA) of applications requested by multiple customers in the cloud service marketplace.